package com.xinqi.modules.exam.analyze.convert;

import com.xinqi.common.base.dto.QuestionBaseDTO;
import com.xinqi.common.mapstruct.CommonConvertConfig;
import com.xinqi.modules.exam.analyze.domain.CourseExamPaperAnalyzeEntity;
import com.xinqi.modules.exam.analyze.dto.QuestionExplainDTO;
import com.xinqi.modules.exam.analyze.dto.req.CourseExamPaperAnalyzeCreateDTO;
import com.xinqi.modules.exam.analyze.dto.req.CourseExamPaperAnalyzeUpdateDTO;
import com.xinqi.modules.exam.analyze.dto.rsp.CourseExamPaperAnalyzeResultDTO;
import org.mapstruct.Mapper;
import org.mapstruct.MappingTarget;

/**
 * 课程测评分析转换
 *
 * @author: linkai
 * @date: 2023/07/02
 */
@Mapper(config = CommonConvertConfig.class)
public abstract class CourseExamPaperAnalyzeConvert {
    public abstract CourseExamPaperAnalyzeEntity create(CourseExamPaperAnalyzeCreateDTO s);

    public abstract CourseExamPaperAnalyzeEntity update(CourseExamPaperAnalyzeUpdateDTO s, @MappingTarget CourseExamPaperAnalyzeEntity t);

    public abstract CourseExamPaperAnalyzeEntity update(CourseExamPaperAnalyzeUpdateDTO s);

    public abstract CourseExamPaperAnalyzeResultDTO convert(CourseExamPaperAnalyzeEntity s);

    public abstract QuestionExplainDTO convert(QuestionBaseDTO s);
}
